home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Magnum One
/
Magnum One (Mid-American Digital) (Disc Manufacturing).iso
/
d20
/
robo_037.com
/
ROBO.CTL
< prev
next >
Wrap
Text File
|
1988-11-07
|
15KB
|
316 lines
; ╔════════════════════════════════════════════════════════════════════════╗
; ║ φ SAMPLE CONTROL FILE for the program, ROBO φ ║
; ╟────────────────────────────────────────────────────────────────────────╢
; ║ ║
; ║ This sample control file is for use with the ROBO mass mailing ║
; ║ program and is for tutorial purposes only. It is not meant to ║
; ║ do anything useful and is not necessarily correct for direct use. ║
; ║ Read the ROBO documentation for a proper understanstaing of how ║
; ║ this control is used and how ROBO operates. ║
; ║ ║
; ╟────────────────────────────────────────────────────────────────────────╢
; ║ φ Copyright (C) 1988 by Tom Kashuba * ALL RIGHTS RESERVED φ ║
; ╚════════════════════════════════════════════════════════════════════════╝
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; COMMON CONTROL SECTION
;
; This following control file section is ALWAYS executed because it
; precedes any GROUP label. It is recommended that you set up such
; a common area for the definition of those items that are common to
; any subsequent control GROUPs.
;
; NOTE: You do NOT need to use GROUPs. Since everything in this initial
; section is ALWAYS executed, you could place all of the commands
; necessary to compose and send a message and/or files in this
; section and it will be executed when you run ROBO without any
; command line arguments.
MAIL .\ ; Where to put messages
OUTBOUND .\ ; Where to put file lists
FROM 1:999/1 "Your Name" ; Your address and name
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; GROUP: Sample1 .... Only run when "ROBO SAMPLE1" is executed.
;
; o Sends only message text to three addresses.
; o Addresses defined within control file.
; o Text defined within control file.
GROUP Sample1
TO 999/1 "Wanda Waxley" ; Def TO:
TO 222/2 Rona_Revlon ; Def TO:
TO 997/4 "Mel Mullusk" ; Def TO:
SUBJ "Robo Test: Message only" ; Set SUBJ:
TEXT ; Use external message text.
This is a ROBO test message created by running ROBO's Sample1
which sent one message to three addresses.
ENDTEXT
SEND ; All set. Now do it!
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; GROUP: Sample2 .... Only run when "ROBO SAMPLE2" is executed.
;
; o Sends two files to three addresses without message.
; o Files defined within control file.
; o Addresses defined within control file.
GROUP Sample2
FILE .\Robo.Prn ; Def File to Send
FILE .\Robo.Reg ; Def File to Send
TO 999/1 "Wanda Waxley" ; Def TO:
TO 998/2 Rona_Revlon ; Def TO:
TO 2:345/67 "Mel Mullusk" ; Def TO: (note: Zone 2)
SUBJ "Robo Test: 3 files only" ; Set SUBJ:
SEND ; All set. Now do it!
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; GROUP: Sample3 .... Only run when "ROBO SAMPLE3" is executed.
;
; o Sends message + two files to three addresses.
; o Files defined within control file.
; o Addresses defined in external file.
GROUP Sample3
FILE .\Robo.Prn ; Def File to Send
FILE .\Robo.Reg ; Def File to Send
TO LIST Send.Lst ; Def TO: (external list)
SUBJ "Robo Test: Msg + 3 files" ; Set SUBJ:
TEXT ; Use external message text.
This is a ROBO test message created by running ROBO's Sample1
which sent two files to an external list of addresses.
ENDTEXT
SEND ; Compose msgs/file lists
EXIT ; Skips rest of control file
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; GROUP: Sample4 .... Only run when "ROBO SAMPLE4" is executed.
;
; This sample control group is very complex since it makes full-blown
; use of many of ROBO's more advanced commands. Because of this, it
; would difficult (nor wise) to make it easily executable on the test
; directory where you have placed ROBO. For this reason, an EXIT
; command has been inserted immediately after the GROUP label so that
; if anyone were fool-hardy enough to run it as is, the sample will
; just exit yet any GROUP that you may append to this file would still
; be executable as the EXIT in this group would be skipped over.
;
; Study this group as an example, review the commands, correlate what
; you see with the ROBO documentation and, ONLY THEN, attempt to alter
; this sample into a form that addresses your particular environment.
;
; As set up, it does EVERYTHING in the current directory which prevents
; it from ever working correctly but, in this way, allows it to act as
; a skeleton for direct adaptation to your own environment.
;
; Were it to have been structured for proper execution in the current
; directory, then it would not have been reflective of a real life
; scenario and its raison d'etre would have been lost.
;
; The sample group is or does ...
;
; o Tour de force - Bells and Whistles - Full Tilt Boogie
; o Checks to see if a NODEDIFF file has been received
;
; o If found ...
;
; - Moves it to proper directory(ies).
; - Copies it to a general directory for MAGIC name FiReq's
; - Checks that copy worked by file check of destination dir
;
; - If COPY worked
;
; ... Delete original
; ... Adds NODEDIFF.A## to proper FILES.BBS
; ... Finally: Compose and Send File to list with text
; Note use of both inlin & external address list
; ... Runs XLAXDIFF to update raw nodelist
; ... Runs XLAXNODE to compile binary nodelist
; ... Archives new raw nodelist to proper director(ies)
; ... Adds NODELIST.A## entry to proper FILES.BBS
;
; I told you it was a "tour de force", didn't I?
;
;
GROUP Sample4
EXIT ; <=== This statement prevents THIS group from running.
DISP ""
DISP "╔═════════════════════════════╕"
DISP "║ Executing DIFF processing │"
DISP "╙─────────────────────────────┘"
DISP ""
; ............................................................
; First, see if the weekly nodediff has arrived.
; ............................................................
disp "if exist c:\netfiles\nodediff.a{j5d2}"
if exist c:\netfiles\nodediff.a{j5d2}
; .............................................................
; : It's HERE! Copy to its download dir for user access. :
; : This is optional if you don't run a BBS or have a :
; : a dir dedicated to keeping FidoNet type files. :
; :...........................................................:
DISP "Found/Moving: {fp}\{fn} to c:\fidonet"
shell "copy {fp}\{fn} c:\fidonet\*.*"
; ...................................................................
; : Most distributors of FidoNet files, like IC's, RC's and :
; : some DC's, maintain a separate dir for copies of of only :
; : the latest network files like NODELIST.A??, NODEDIFF.A?? :
; : and FNEWS???.ARC. :
; : :
; : For such setups, we delete any existing generation of our :
; : just received NODEDIFF so that this file, once copied there, :
; : will be the only one sent in response to a generic (wildcarded) :
; : or aliased (Magic named) file request. :
; :.................................................................:
DISP "Deleting c:\fidoweek\nodediff.*"
shell "del c:\fidoweek\nodediff.*"
; .................................................................
; : Now we copy the received file to this latest issue directory. :
; :...............................................................:
DISP "Copying {fp}\{fn} to c:\fidoweek"
shell "copy {fp}\{fn} c:\fidoweek\*.*"
; ............................................................
; : We now check to see if our received file is, indeed, in :
; : the destination directory before burning any bridges. :
; :..........................................................:
if exist c:\fidonet\{fn}
; ....................................................
; : If we're here, it's there! Delete the original! :
; ....................................................
; : WARNING: Use of the file name macros can be very :
; : dangerous. They ALWAYS have the values of the :
; : LAST 'IF EXIST' statement which may be different :
; : than what you first think. See docs on macros! :
; : With that in mind, please note how I sometimes :
; : use an explicit path rather than the path macro :
; : which might have the path of the last EXITS and :
; : not the one I really want. :
; :..................................................:
DISP "Deleting: c:\netfiles\{fn}"
shell "del c:\netfiles\{fn}"
; ............................................................
; : Since I have a download directory for an infosystem that :
; : uses FILES.BBS as a file list, we use the FLAP command :
; : to update that file list with its new resident. :
; :..........................................................:
DISP "Updating c:\fidonet\files.bbs"
FLAP "c:\fidonet\files.bbs" "<NODEDIFF" "{ff} {ymd} EDITNL input file: Brings NODELIST to j.{j5d3} -robo"
; .............................................................
; : Ok, finally time to send the file attach with appropriate :
; : message to our list of NODEDIFF recipients :
; :...........................................................:
DISP "Sending {fp}\{fn} ..."
FROM 1:999/0 "R999 Coordinator"
SUBJ "Weekly NodeDiff Update"
; ............................................................
; : I use the TRACK option below to avoid re-sending what :
; : my source might have sent me in duplicate. It's only :
; : one dupe to me but umpteen dupes sent out if not caught! :
; :..........................................................:
FILE {fp}\{fn} track ; Note: TRACK option!
TO LIST Send.Lst ; Recipient list
TO 999/123 "Extra someone" ; Some extra person
SET PRIVATE KILL
; ...................................................
; : Here's a cutesy message to announce the arrival :
; : of the all-important weekly file. :
; :.................................................:
TEXT
Here's your latest NodeDiff file to update your NodeList
for use with Editnl or compatible.
Voici le 'NodeDiff' pour modifier votre 'NodeList' avec
the programme 'EditNl' ou compatible.
...........................................................
This NodeDIFF ---. .--------.
>--> | UPDATE | ---> Current
Last Nodelist ---' `--------' NodeList
.----------. |
Working Files <-------| COMPILER | <-------'
`----------'
...........................................................
The Boss, Coord, Region 999, Lower East PoDunk, 999/0
ENDTEXT
SEND
; .........................................................
; : Ok, here's a little extra-curricular activity wherein :
; : we shell out to actually run a nodelist processor, :
; : update our current nodelist, arc up that result and :
; : place it in appropriate places, and update any :
; : applicable FILES.BBS :
; :.......................................................:
DISP "Updating NodeList"
shell "cd c:\netinfo"
shell "pkxarc c:\fidoweek\{fn}"
shell "xlaxdiff"
shell "del c:\fidoweek\nodelist.*"
shell "pkarc /oct a c:\fidonet\nodelist.a{j5d2} nodelist.{j5d3}"
shell "copy c:\fidonet\nodelist.a{j5d2} c:\fidoweek\*.*"
shell "cd \netinfo" ; Hmmm, Seems superfluous!
FLAP "c:\fidonet\files.bbs" "<NODELIST" "NODELIST.A{j5d2} {ymd} Latest NodeList -robo"
endif ; copied ok
endif ; nodediff found
;..........................................................................
; Supplementary note on Sample4 :
; :
; Upon reviewing this skeleton which is based upon my own particular :
; setup, I realized that it is entirely possible to use the FLAP command :
; to directly alter any "OK FILES" list that your system might support :
; to directly overlay the any existing entry for the nodediff and/or :
; nodelist files. :
; :
; This would obviate the need for a separate directory for weekly files :
; by dynamically altering the available files spec into a form that :
; reflects the current week's file names. I leave the the execution of :
; this idea to the more adventurous as I have a migraine at the moment. :
; <laugh ... ouch!> -kash :
;.........................................................................: